//
//  SISSNetworkingManager+HouseCoopProgress.h
//  SISSAPP
//
//  Created by 优房网 on 2017/8/1.
//  Copyright © 2017年 优房网. All rights reserved.
//

#import "SISSNetworkingManager.h"
#import "SISSHouseCoopProgressInfoModel.h"
#import "SISSHouseCoopTakeLookModel.h"
#import "SISSPassengerCoopTakeLookModel.h"
#import "SISSCooperationAgreementModel.h"
#import "SISSCoopAgreementBrokerInfoModel.h"
#import "SISSHouseCooperationDetailModel.h"
#import "SISSPassengerCooperationDetailModel.h"
#import "SISSHouseTakeLookDetailModel.h"
#import "SISSPassengerTakeLookDetailModel.h"
#import "SISSCommentModel.h"
#import "SISSCoopAgreementDraftModel.h"
#import "SISSIntermediaryContractModel.h"

@interface SISSNetworkingManager (CoopProgress)

/**
 4.2.3  删除房源合作进度 GET请求
 
 @param ahcbId 房源合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)deleteHouseCooperationProgressWithHouseAhcbId:(NSString *)ahcbId
                                         successBlock:(void (^)(id responseObject))successBlock
                                               failed:(void (^)(NSError *error))failedBlock;

/**
 4.2.4  删除客源合作进度 GET请求
 
 @param adcbId 客源合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)deletePassengerCooperationProgressWithHouseAdcbId:(NSString *)adcbId successBlock:(void (^)(id responseObject))successBlock failed:(void (^)(NSError *error))failedBlock;

/**
 4.3.1 获取合作进度合作协议 GET请求
 
 @param abpId 合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestCooperationProgressCooperationAgreementWithAbpId:(NSString *)abpId success:(void(^)(SISSCooperationAgreementModel *agreementModel))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.4.3 获取房源合作记录时间和id信息 GET请求
 
 @param ahbId 房源合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestHouseCooperationProgressRecordInfoWithAhbId:(NSString *)ahbId
                                              success:(void(^)(SISSHouseCoopProgressInfoModel *progressInfoModel))successBlock
                                               failed:(void(^)(NSError *error))failedBlock;
/**
 4.4.4 获取客源合作记录时间和id信息 GET请求
 
 @param adcbId 客源合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestPassengerCooperationProgressRecordInfoWithAdcbId:(NSString *)adcbId
                                              success:(void(^)(SISSHouseCoopProgressInfoModel *progressInfoModel))successBlock
                                               failed:(void(^)(NSError *error))failedBlock;


/**
 4.9.1 获取房源合作带看记录 GET请求
 
 @param acbId 合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestHouseCooperationTakeLookWithAcbId:(NSString *)acbId success:(void(^)(NSArray<SISSHouseCoopTakeLookModel *> *takeLookArr))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.9.2 获取客源合作带看记录 GET请求
 
 @param acbId 合作进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestPassengerCooperationTakeLookWithAcbId:(NSString *)acbId success:(void(^)(NSArray<SISSPassengerCoopTakeLookModel *> *takeLookArr))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.10.1 获取房源合作带看记录详情 GET请求
 
 @param ahcrId ahcrId
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestHouseCooperationTakeLookDetailWithAhcrId:(NSString *)ahcrId success:(void(^)(SISSHouseTakeLookDetailModel *takeLookDetailModel))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.10.2 获取客源合作带看记录详情 GET请求
 
 @param ID id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestPassengerCooperationTakeLookDetailWithID:(NSString *)ID success:(void(^)(SISSPassengerTakeLookDetailModel *takeLookDetailModel))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.11.1 更新房源合作带看记录状态
 
 @param ahcrId 带看记录id
 @param state 1：同意 2：不同意
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)updateHouseCooperationTakeLookWithAhcrId:(NSString *)ahcrId state:(NSInteger)state success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.11.2 更新客源合作带看记录状态
 
 @param adcrId 带看记录id
 @param state 1：同意 2：不同意
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)updatePassengerCooperationTakeLookWithAdcrId:(NSString *)adcrId state:(NSInteger)state success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;


/**
 4.14  获取经纪人评价经纪人的评价记录 GET请求
 
 @param acbId  合作进度id
 @param atlrId 带看记录id
 @param commentType 1：带看评价 2：服务评价
 @param cooperationType 1：房源合作 2：客源合作
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestCommentBrokerCommentBrokerInfoWithAcbId:(NSString *)acbId atlrId:(NSString *)atlrId commentType:(NSInteger)commentType coooperationType:(NSInteger)cooperationType success:(void(^)(NSArray<SISSCommentModel *> *commentArr))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.15 经纪人评价经纪
 
 @param parameters 参数
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertBrokerCommentBrokerWithParameters:(NSDictionary *)parameters success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.17.1  删除房源合作进度带看记录 GET请求
 
 @param ID 带看id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)deleteHouseCooperationTakeLookWithTakeLookId:(NSString *)ID success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.17.2  删除客源合作进度带看记录 GET请求
 
 @param ID 带看id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)deletePassengerCooperationTakeLookWithTakeLookId:(NSString *)ID success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;


/**
 4.22  获取合同文件 GET请求
 
 @param acbId 进度id
 @param contractType 合同类型：1居间合同 2买卖合同
 @param cooperationType 合作类型：1房源合作 2客源合作
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestContractWithAcbId:(NSString *)acbId contractType:(NSInteger)contractType cooperationType:(NSInteger)cooperationType success:(void(^)(NSArray *contractArr))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.5.1 添加合作进度合作协议 (图文上传)
 
 @param parameters 上传参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertCooprationAgreementWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.5.2 跟新合作进度合作协议 (图文上传) PUT请求
 
 @param parameters 上传参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)updateCooprationAgreementWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.8.1 添加房源合作带看记录  (图文上传)
 
 @param parameters 上传参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertHouseCooprationTakeLookWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.8.2 添加客源合作带看记录  (图文上传)
 
 @param parameters 上传参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertPassengerCooprationTakeLookWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.21 上传合同  (图文上传)
 
 @param parameters 上传参数 saId acb_id contract_type(合同类型)：1居间合同 2买卖合同 cooperation_type(合作类型)：1房源合作 2客源合作
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)uploadContractWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.18.1 获取居间合同 GET请求
 
 @param abpId 进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestIntermediaryContractWithAbpId:(NSString *)abpId success:(void(^)(SISSIntermediaryContractModel *intermediaryContractModel))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.18.2 添加居间合同 (图文上传)
 
 @param parameters 上传参数
 @param images 合同图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertCoopMiddleContractWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.18.3 更新居间合同 (图文上传) PUT请求
 
 @param parameters 上传参数
 @param images 合同图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)updateCoopMiddleContractWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.19.1 获取买卖合同 GET请求
 
 @param abpId 进度id
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)requestBusinesscontractWithAbpId:(NSString *)abpId success:(void(^)(SISSIntermediaryContractModel *intermediaryContractModel))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.19.2 上传买卖合同 (图文上传)
 
 @param parameters 参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)insertCoopBusinessContractWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;

/**
 4.19.3 更新买卖合同 (图文上传) PUT请求
 
 @param parameters 参数
 @param images 上传图片
 @param successBlock 成功的回调
 @param failedBlock 失败的回调
 */
- (void)updateCoopBusinessContractWithParameters:(NSDictionary *)parameters images:(NSArray<UIImage *> *)images success:(void(^)(id responseObject))successBlock failed:(void(^)(NSError *error))failedBlock;


@end
